﻿using System;

namespace Borg.AddOn
{
    [Serializable]
    public class NotifierNotificationHook : INotifierNotificationHook
    {
        public virtual void OnActivated(ExtensionEventArgs args)
        { }

        public virtual void OnClosed(SlotEventArgs args)
        { }

        public virtual void OnContractAdded(ContractEventArgs args)
        { }

        public virtual void OnContractRemoved(ContractEventArgs args)
        { }

        public virtual void OnCreated(ExtensionEventArgs args)
        { }

        public virtual void OnDeactivated(ExtensionEventArgs args)
        { }

        public virtual void OnDestroyed(ExtensionEventArgs args)
        { }

        public virtual void OnHandlerAdded(object handler)
        { }

        public virtual void OnHandlerInvocationFinished(object handler)
        { }

        public virtual void OnHandlerInvocationStarted(object handler)
        { }

        public virtual void OnHandlerRemoved(object handler)
        { }

        public virtual void OnOpened(SlotEventArgs args)
        { }

        public virtual void OnPlugged(CompositionEventArgs args)
        { }

        public virtual void OnPluginAdded(PluginEventArgs args)
        { }

        public virtual void OnPluginRemoved(PluginEventArgs args)
        { }

        public virtual void OnTagged(TagEventArgs args)
        { }

        public virtual void OnUnplugged(CompositionEventArgs args)
        { }

        public virtual void OnUntagged(TagEventArgs args)
        { }
    }
}
